############ EXERCCIOS 6 - ANA CAROLINA PAVAN ###############

#### Crie seus dados ####3
conj1<-rnorm(10,6,3)
conj2<-rnorm(10,7.5,3.2)
m.conj1<-mean(conj1)
m.conj2<-mean(conj2)
dados=data.frame(conj1,conj2)
str(dados)
boxplot(dados)
dif=abs(m.conj1-m.conj2)
dif

#1)Teste da hipotese:
source("simula.r")
dif.conj=simula(conj1,conj2,nsim=2000)
table(dif.conj)
n.maior=sum(dif.conj>=dif)
n.maior
n.maior/length(dif.conj)
# O p dos meus dados foi 0.20. Ou seja, hipotese nula no rejeitada: as mdias no diferem!

#2)Mdia da segunda amostra maior que da primeira:
dif.conj.uni=simula(conj2,conj1, teste= "uni", nsim=2000)
dif.conj.uni
valor.maior=sum(round(dif.conj.uni,1)>=round(dif,1))
valor.maior
##### Qual a probabilidade de errar ao afirmar que a mdia de conj2  maior que a mdia de conj1?
p.uni=valor.maior/2000
p.uni
##### O valor deu 0.09, ou seja, quase 10% de probabilidade de erro ao aceitar mdia.conj2>media.conj1

#3)Usando o teste t:
t.test(conj2,conj1)
t.test(conj2,conj1,alternative="g")# o valor de p foi metade do observado no calculo acima.
## Os valores so bem prximos ao teste anterior.

#4)Explorei os dados inicialmente apenas com um Boxplot

#5) As premissas da funo "simula" so que os dados testados sejam um conjuntos de valores continuos, que se adequem a uma distribuio normal(idem para teste t).

##### Caixeta de NOVO?! ####
caixeta=read.table("caixeta.csv", header=TRUE, sep=",")
head(caixeta)

#1)Valores de rea basal:
raio=(caixeta$cap)/(2*base::pi)
caixeta$ab=base::pi*(raio^2)
head(caixeta)
somaabasal = aggregate(caixeta$ab, list(caixeta$local,caixeta$arvore), sum)
somaabasal

#2)rea basal por amostra:
abasal_amostra<-aggregate(caixeta$ab,list(caixeta$local,caixeta$parcela),mean)
abasal_amostra
sort(abasal_amostra[,3])

#3) Grficos:
par(mfrow=c(1,2))
plot(abasal_amostra[,c(1,3)],ylab="Area basal por localidade",xlab="")
plot(abasal_amostra[abasal_amostra$Group.1=="chauas",2:3],ylab="Area basal",xlab="Parcelas",pch=16,col=2,ylim=c(3000,24000))
par(new=TRUE)
plot(abasal_amostra[abasal_amostra$Group.1=="retiro",2:3],pch=16,col=3,ann=FALSE, axes=FALSE)
par(new=TRUE)
plot(abasal_amostra[abasal_amostra$Group.1=="jureia",2:3],pch=16,col=4,ann=FALSE, axes=FALSE)
legend(locator(1), legend=c("chauas", "retiro","jureia"), pch=16, col=c(2,3,4) , bty="n")

#4)Anova para esses dados sendo a varivel dependente a rea basal e o tratamento as localidades. Cada observao refere-se a uma amostra ou parcela.
chauas=abasal_amostra[c(1,4,7,10,13),3]
chauas
retiro=abasal_amostra[c(3,6,9,12,15),3]
retiro
jureia=abasal_amostra[c(2,5,8,11,14),3]
jureia
ambientes=data.frame(chauas,retiro,jureia)
ambientes
str(ambientes)
media.ab.ambientes<-apply(ambientes,2,mean)
media.ab.ambientes
media.ab.geral=mean(media.ab.ambientes)
media.ab.geral
# SS TOTAL:
dif.geral=ambientes-media.ab.geral
dif.geral
sum(dif.geral)
round(sum(dif.geral),5)
ss.ambientes=dif.geral^2
ss.total=sum(ss.ambientes)
ss.total
# SS INTRA:
ss.chauas=sum((chauas-media.ab.ambientes[1])^2)
ss.chauas
ss.retiro=sum((retiro-media.ab.ambientes[2])^2)
ss.retiro
ss.jureia=sum((jureia-media.ab.ambientes[3])^2)
ss.jureia
ss.intra=ss.jureia+ss.chauas+ss.retiro
ss.intra
# SS ENTRE:
ss.entre=sum(5*(media.ab.ambientes-media.ab.geral)^2)
# ou: ss.entre=ss.total-ss.intra
ss.entre
# Calculo do F :
ms.entre=ss.entre/2
ms.intra=ss.intra/12
ms.entre
ms.intra
F.ambientes=ms.entre/ms.intra
F.ambientes
pf(F.ambientes, 2, 12, lower.tail=FALSE)

#5)Funo aov.
str(ambientes)
var.resp=c(ambientes$chauas,ambientes$retiro,ambientes$jureia)
var.resp
ambientes.f=factor(rep(c("chauas","retiro","jureia"),each=5))
ambientes.f
dados.ambientes=data.frame(var.resp,ambientes.f)
dados.ambientes
res.anova=aov(var.resp~ambientes.f)
res.anova
summary(res.anova)
# porcentagem de variao explicada pela localidade:
variao_localidade=ss.entre/ss.total
variao_localidade
# 76% da variao  explicada pela localidade!!

####### FIM! #######